//package com.alittle;
//
//import android.test.ActivityInstrumentationTestCase2;
//import android.view.ViewGroup;
//import android.widget.EditText;
//
//import com.robotium.solo.Solo;
//import com.ygkj.chelaile.standard.R;
//
//import java.util.ArrayList;
//import java.util.List;
//import java.util.Random;
//
//import dev.xesam.chelaile.app.module.PanelHostActivity;
//import dev.xesam.chelaile.app.module.city.CityChooseActivity;
//import dev.xesam.chelaile.app.module.func.SplashActivity;
//import dev.xesam.chelaile.app.module.line.LineDetailActivity;
//import dev.xesam.chelaile.app.module.line.StationDetailActivity;
//import dev.xesam.chelaile.app.module.line.view.RealTimePanelContent;
//import dev.xesam.chelaile.app.module.remind.ReminderEditActivity;
//import dev.xesam.chelaile.sdk.app.api.City;
//import se.emilsjolander.stickylistheaders.StickyListHeadersListView;
//
//
///**
// * Created by wom on 2015/8/6.
// */
//public class SplashActivityTest extends ActivityInstrumentationTestCase2 {
//
//    private Solo solo;
//
//    public SplashActivityTest() throws ClassNotFoundException {
//        super(SplashActivity.class);
//    }
//
//    @Override
//    public void setUp() throws Exception {
//        super.setUp();
//        solo = new Solo(getInstrumentation());
//        getActivity();
//    }
//
//    @Override
//    public void tearDown() throws Exception {
//        solo.finishOpenedActivities();
//        super.tearDown();
//    }
//
//    public void testRun() {
//
//        solo.waitForActivity(PanelHostActivity.class, 3000);
//
//        String city = getCityName();
//        changeToCity(city);
//
//        solo.waitForEmptyActivityStack(2000);
//
//        cleanSearchHistory();
//
//        String content = getSearchContent();
//        performSearch(content);
//
//        // 分发，不放在私有方法里
//        if (solo.waitForActivity(LineDetailActivity.class, 2000)) {
//
//            runInLine();
//
//        } else if (solo.waitForActivity(StationDetailActivity.class, 2000)) {
//
//            runInStation();
//
//        } else if (solo.searchText("没有找到合适的线路和车站", true)) {
//
//            solo.goBack();
//
//        } else {
//
//            solo.scrollDown();
//
//            solo.clickInList(1);
//
//            if (solo.waitForActivity(LineDetailActivity.class, 2000)) {
//
//                runInLine();
//            } else {
//
//                runInStation();
//            }
//        }
//        //退出
//        solo.goBack();
//
//        solo.waitForDialogToOpen(2000);
//
//        solo.clickOnView(solo.getView(R.id.v4_dialog_action_positive));
//
//    }
//
//    private String getCityName() {
//
//        solo.clickOnView(solo.getView(R.id.cll_mod_main_tab_mine));
//
//        solo.clickOnView(solo.getView(R.id.cll_row_city));
//
//        String[] citys = getCitys();
//
//        int ran = new Random().nextInt(citys.length);
//
//        return citys[ran];
//    }
//
//    private void changeToCity(String city) {
//
//        solo.clickOnView(solo.getView(R.id.cll_search_section));
//
//        solo.clearEditText((EditText) solo.getView(R.id.frame_toolbar_search_query));
//
//        solo.enterText((EditText) solo.getView(R.id.frame_toolbar_search_query), city);
//
//        solo.clickInList(1);
//    }
//
//    private String getSearchContent() {
//
//        int ran = new Random().nextInt(1000);
//
//        return String.valueOf(ran);
//    }
//
//    private void performSearch(String content) {
//
//        solo.clickOnView(solo.getView(R.id.cll_search_section));
//
//        solo.clearEditText((EditText) solo.getView(R.id.frame_toolbar_search_query));
//
//        solo.enterText((EditText) solo.getView(R.id.frame_toolbar_search_query), content);
//
//        solo.clickOnView(solo.getView(R.id.frame_toolbar_search_action));
//
//    }
//
//    /**
//     * 在线路详情内跑的具体测试
//     */
//    private void runInLine() {
//
//        solo.clickOnView(solo.getView(R.id.cll_split_action_fav));
//
//        if (solo.searchButton("取消")) {
//
//            solo.clickOnText("取消收藏");
//
//        } else {
//
//            solo.clickOnView(solo.getView(R.id.cll_split_action_fav));
//
//            solo.waitForDialogToOpen(2000);
//
//            solo.clickOnText("取消收藏");
//        }
//
//        solo.clickOnView(solo.getView(R.id.cll_split_action_refresh));
//
//        remindTest();
//
//        moreTest();
//
//        solo.clickOnView(solo.getView(R.id.cll_split_action_reverse));
//
//        lineDetailTest();
//
//        solo.clickOnView(solo.getView(R.id.indicator_action_2));
//
//        solo.goBack();
//
//        solo.clickOnView(solo.getView(R.id.indicator_action_1));
//
//        solo.goBack();
//
//        solo.clickOnView(solo.getView(R.id.frame_toolbar_action_0));
//
//        solo.goBack();
//
//        solo.clickOnActionBarHomeButton();
//
//    }
//
//    /**
//     * 在站点详情内跑的具体测试
//     */
//    private void runInStation() {
//
//        solo.clickOnView(solo.getView(R.id.fav_view));
//
//        if (solo.searchButton("取消")) {
//
//            solo.clickOnText("取消收藏");
//
//        } else {
//
//            solo.clickOnView(solo.getView(R.id.fav_view));
//
//            solo.waitForDialogToOpen(2000);
//
//            solo.clickOnText("取消收藏");
//        }
//
//        solo.clickOnView(solo.getView(R.id.title_tv));
//
//        runInLine();
//    }
//
//    /**
//     * 有关提醒的测试
//     */
//    private void remindTest() {
//
//        if (solo.searchText("提醒")) {
//
//            solo.clickOnView(solo.getView(R.id.cll_split_action_alarm));
//
//            if (solo.waitForActivity(ReminderEditActivity.class)) {
//
//                solo.clickOnView(solo.getView(R.id.remind_interval_rl));
//
//                solo.clickOnText("即将到站");
//
//                solo.clickOnView(solo.getView(R.id.remind_circle_rl));
//
//                solo.clickOnText("仅一次");
//
//                solo.clickOnView(solo.getView(R.id.remind_start_time_rl));
//
//                solo.clickOnView(solo.getView(R.id.done_button));
//
//                solo.clickOnView(solo.getView(R.id.remind_end_time_rl));
//
//                solo.clickOnView(solo.getView(R.id.done_button));
//
//                solo.clickOnView(solo.getView(R.id.frame_toolbar_action_0));
//
//                solo.clickOnView(solo.getView(R.id.cll_split_action_alarm));
//
//            }
//            solo.clickOnText("提醒");
//
//            solo.clickOnView(solo.getView(R.id.cll_split_action_alarm));
//
//            solo.clickOnText("修改");
//
//            solo.clickOnView(solo.getView(R.id.cll_alarm_delete));
//        }
//    }
//
//    /**
//     * 有关纠错的测试
//     */
//    private void moreTest() {
//
//        solo.clickOnView(solo.getView(R.id.cll_split_action_more));
//
//        solo.clickOnText("纠正基础信息");
//
//        solo.clearEditText((EditText) solo.getView(R.id.cll_error_info));
//
//        solo.enterText((EditText) solo.getView(R.id.cll_error_info), "有错误");
//
//        solo.clickOnView(solo.getView(R.id.frame_toolbar_action_2));
//
//        solo.clickOnText("发现漏车");
//
//        solo.clearEditText((EditText) solo.getView(R.id.v4_dialog_message));
//
//        solo.enterText((EditText) solo.getView(R.id.v4_dialog_message), "123456");
//
//        solo.clickOnView(solo.getView(R.id.v4_dialog_action_positive));
//
//        solo.clickOnText("上报幽灵车");
//
//        solo.clickOnView(solo.getView(R.id.v4_dialog_action_positive));
//
//        solo.goBack();
//
//    }
//
//    /**
//     * 有关线路详情的测试
//     */
//    private void lineDetailTest() {
//
//        solo.scrollViewToSide(solo.getView(R.id.cll_real_time_panel_content), Solo.LEFT);
//
//        RealTimePanelContent content = (RealTimePanelContent) solo.getCurrentActivity().findViewById(R.id.cll_real_time_panel_content);
//
//
//        ViewGroup view = (ViewGroup) content.getChildAt(1);
//
//        solo.clickOnView(view.getChildAt(4));
//
//
//        solo.scrollViewToSide(solo.getView(R.id.cll_real_time_panel_content), Solo.RIGHT);
//
//    }
//
//    /**
//     * 清除搜索历史
//     */
//    private void cleanSearchHistory() {
//
//        solo.clickOnView(solo.getView(R.id.cll_search_section));
//
//        if (solo.searchText("清空历史记录")) {
//
//            solo.clickOnText("清空历史记录");
//
//            solo.waitForDialogToOpen(2000);
//
//            solo.clickOnView(solo.getView(R.id.v4_dialog_action_positive));
//        }
//        solo.goBack();
//    }
//
//    /**
//     * 在CityChooseActivity界面内得到城市列表
//     *
//     * @return 城市列表
//     */
//    private String[] getCitys() {
//
//        if (solo.waitForActivity(CityChooseActivity.class, 3000)) {
//
//            solo.waitForEmptyActivityStack(3000);
//            StickyListHeadersListView stickyLv = (StickyListHeadersListView) solo.getCurrentActivity().findViewById(R.id.cll_city_change_list);
//
//            List citys = new ArrayList();
//
//            for (int i = 3; i < stickyLv.getAdapter().getCount(); i++) {
//
//                City city = (City) stickyLv.getAdapter().getItem(i);
//
//                citys.add(city.getCityName());
//            }
//
//            return (String[]) citys.toArray(new String[citys.size()]);
//        }
//
//        return new String[]{"天津", "北京"};
//    }
//}
//
//
//
